Proof Tactics for the Verification of Structured Systems of Affine Recurrence Equations David Cachera and David Pichardie

نویسنده

  • David Pichardie
چکیده

Systems of aane recurrence equations (SAREs) over polyhedral domains are widely used to model computation-intensive algorithms and to derive parallel code or hardware implementations. The development of complex SAREs for real-sized applications calls for the elaboration of formal veriication techniques. As the systems we consider are generic, i.e., depend on parameters whose value are not statically known, we considered using theorem provers, and have implemented a translation from SAREs into the Coq system. The major drawback of interactive theorem provers is the lack of automation. We overcome this problem by developing proof tactics speciic to our model. We take advantage of the regularity of our model to automatically generate induction schemes adapted to each particular system. For the veriication of complex systems, we develop an import/export mechanism that allows for a simple and eecient reuse of theorems in modular proofs. Tactiques de preuve pour la v eriication de syst emes structur es d' equations r ecurrentes aanes R esum e : Les syst emes d' equations r ecurrentes aanes sur des domaines poly edriques sont largement utilis es pour mod eliser des algorithmes de calcul intensif, pour g en erer du code parall ele ou d eriver des impl ementations mat erielles. Le d eveloppement de syst emes complexes permettant de traiter des applications de taille r eelle n ecessite l' elaboration de m ethodes formelles de v eriication adapt ees. Nous consid erons des syst emes g en eriques, c'est-a-dire des syst emes dont la taille est x ee par des param etres symboliques dont la valeur n'est pas connue statiquement. Nous utilisons donc une approche fond ee sur la preuve de th eor emes, et avons impl ement e une traduction des syst emes d' equations r ecurrentes vers l'assistant de preuve Coq. Pour surmonter le d eecit d'automatisation de ce type d'outil, mous d eveloppons des tactiques de preuve sp eciiques a notre mod ele. Nous tirons parti de la r egularit e inh erente a ce mod ele pour g en erer automatiquement des sch emas d'induction adapt es a chaque syst eme. Pour la v eriication de syst emes complexes, nous d eveloppons un m ecanisme d'importation/exportation qui permet une r eutilisation simple et eecace des th eor emes dans un cadre de preuve modulaire. Mots cl es : mod ele poly edrique, equations r ecurrentes, m ethodes formelles de v eriication, preuve de th …

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Embedding of Systems of Affine Recurrence Equations in Coq

Systems of aane recurrence equations (SAREs) over poly-hedral domains are widely used to model computation-intensive algorithms and to derive parallel code or hardware implementations. The development of complex SAREs for real-sized applications calls for the elaboration of formal veriication techniques. As the systems we consider are generic, i.e., depend on parameters whose value are not stat...

متن کامل

Comparing Techniques for Certified Static Analysis

A certified static analysis is an analysis whose semantic validity has been formally proved correct with a proof assistant. The recent increasing interest in using proof assistants for mechanizing programming language metatheory has given rise to several approaches for certification of static analysis. We propose a panorama of these techniques and compare their respective strengths and weaknesses.

متن کامل

Verifying a Concurrent Garbage Collector Using a Rely-Guarantee Methodology

Concurrent garbage collection algorithms are an emblematic challenge in the area of concurrent program verification. In this paper, we address this problem by proposing a mechanized proof methodology based on the popular RelyGuarantee (RG) proof technique. We design a specific compiler intermediate representation (IR) with strong type guarantees, dedicated support for abstract concurrent data s...

متن کامل

Certified Static Analysis by Abstract Interpretation

A certified static analysis is an analysis whose semantic validity has been formally proved correct with a proof assistant. We propose a tutorial on building a certified static analysis in Coq. We study a simple bytecode language for which we propose an interval analysis that allows to verify statically that no array-out-of-bounds accesses will occur.

متن کامل

Certified Memory Usage Analysis

We present a certified algorithm for resource usage analysis, applicable to languages in the style of Java byte code. The algorithm verifies that a program executes in bounded memory. The algorithm is destined to be used in the development process of applets and for enhanced byte code verification on embedded devices. We have therefore aimed at a low-complexity algorithm derived from a loop det...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003